// 实现多语言的方式有几种？ 1.通过路径切换 www/zh-cn  2.请求头中可以切换语言

const http = require('http');
const fs = require('fs')

let defaultLanguage = 'es';
let mapping = { // 多语言都是要有映射关系的
    'es':"hello world",
    'zh-CN':'你好,世界'
}

http.createServer((req,res)=>{
    let language = req.headers['accept-language']
    if(language){
        // en,zh-CN;q=0.9   q代表权重
        language = language.split(',').map(lan=>{
            let [l,q='q=1'] = lan.split(';')
            return {
                lan:l,
                q:q.split('=')[1]
            }
        }).sort((a,b)=>b.q-a.q)
        console.log(language)
        for(let i = 0; i < language.length;i++){
            let current = language[i].lan;
            if(mapping[current]){
                res.setHeader('Content-Type','text/plain','charset=utf-8')
                response.write('<head><meta charset="utf-8"/></head>');
                res.end(mapping[current]);
                return;
            }
        }
    }
    res.end(mapping[defaultLanguage])
}).listen(3000)